package com.tdam2011.grupo05.ui.activities;

import java.io.UnsupportedEncodingException;

import com.tdam2011.grupo05.R;
import com.tdam2011.grupo05.R.id;
import com.tdam2011.grupo05.R.layout;
import com.tdam2011.grupo05.com.MensajeParser;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class ConfiguracionInicialActivity extends Activity implements
		OnClickListener {

	public static final String LOG_TAG = "Configuracion LOG";

	private EditText txtUsuario;
	private EditText txtPassword;
	private Button btn_ok;
	private Button btn_cancelar;

	private MensajeParser procesarMensaje;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.configuracion_inicial_activity);

		txtPassword = (EditText) findViewById(R.id.txt_password);
		txtUsuario = (EditText) findViewById(R.id.txt_usuario);

		btn_cancelar = (Button) findViewById(R.id.btn_cancelar_config);
		btn_ok = (Button) findViewById(R.id.btn_ok_config);

		btn_ok.setOnClickListener(this);

		btn_cancelar.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				Log.d(LOG_TAG, "Cancelar!!!");
				setResult(RESULT_CANCELED);
				finish();
			}
		});

	}

	@Override
	protected void onStart() {
		// TODO Auto-generated method stub
		super.onStart();
		procesarMensaje = new MensajeParser();

	}

	@Override
	public void onClick(View v) {
		String usuario = txtUsuario.getText().toString();
		String password = txtPassword.getText().toString();

		if (procesarMensaje(usuario, password)) {
			
			Intent intent = new Intent();
			intent.putExtra("usuario", usuario);
			intent.putExtra("password", password);
			setResult(RESULT_OK, intent);
			
			finish();
		} else {
			AlertDialog.Builder builder = new AlertDialog.Builder(this);
			builder.setMessage("Nombre de Usuario/Password mal formado")
					.setCancelable(false)
					.setPositiveButton("Ok",
							new DialogInterface.OnClickListener() {

								@Override
								public void onClick(DialogInterface dialog,
										int which) {
									txtPassword.setText("");
									txtUsuario.setText("");

								}
							});
			AlertDialog alert = builder.create();
			alert.show();
		}
	}

	public boolean procesarMensaje(String usuario, String password) {
		try {
			System.out.println("procesar mensaje");
			procesarMensaje.registrarUsuario(usuario, password);

			if (procesarMensaje.respuesta().equals(MensajeParser.SUCCESS_RESULT)) {
				return true;
			} else
				return false;

		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
			return false;
		}
	}
}
